package com.example.common.mvi

/**
 * 单次事件基类
 * 用于处理导航、Toast等一次性事件，避免重复触发
 */
sealed class SingleEvent { // 密封类，限制子类数量
    data class ShowToast(val message: String) : SingleEvent() // 显示Toast消息
    data class ShowError(val error: String) : SingleEvent() // 显示错误消息
    data class Navigate(val route: String, val params: Map<String, Any> = emptyMap()) : SingleEvent() // 页面导航
    object ShowLoading : SingleEvent() // 显示加载状态
    object HideLoading : SingleEvent() // 隐藏加载状态
}